/*
 * spi.h
 *
 *  Created on: Oct 16, 2013
 *      Author: IEUser
 */

#ifndef SPI_H_
#define SPI_H_

/******************************************************************************************
 *	Deklaracje dołączanych plików nagłówkowych i bibliotek								 *
 *****************************************************************************************/
#include <avr/io.h>
/******************************************************************************************
 *	Makrodefinicje															 			 *
 *****************************************************************************************/
#define SPI_MASTER	// jesli slave to SPI_SLAVE

#if defined (__AVR_ATmega88__)
	#define SPI_PORT	PORTB
	#define SPI_DDR		DDRB
	#define SPI_SS		PB2
	#define SPI_MOSI	PB3
	#define SPI_MISO	PB4
	#define SPI_SCK		PB5
#elif defined (__AVR_ATmega8__) || (__AVR_ATmega32__)
	#define SPI_PORT	PORTB
	#define SPI_DDR		DDRB
	#define SPI_SS		PB4
	#define SPI_MOSI	PB5
	#define SPI_MISO	PB6
	#define SPI_SCK		PB7
#endif
/******************************************************************************************
 *	Deklaracje zmiennych pomocniczych i globalnych										 *
 *****************************************************************************************/

/******************************************************************************************
 *	Deklaracje funkcji								 									 *
 *****************************************************************************************/
void spi_init(void);
uint8_t spi_read_byte(void);
void spi_write_byte(uint8_t byte);

#endif /* SPI_H_ */
